package math;

public interface ExpressionVisitor<R> extends AEVisitor<R>{

  public abstract R visitAnd(And and);

  public abstract R visitBooleanConstant(BooleanConstant booleanConstant);

  public abstract R visitOr(Or or);

  public abstract R visitBooleanVariable(BooleanVariable booleanVariable);

  public abstract R visitNot(Not not);

  public abstract R visitLogicalBooleanVariable(LogicalBooleanVariable logicalBooleanVariable);

  public abstract R visitArithmeticError(ArithmeticError arithmeticError);

  public abstract R visitXor(Xor xor);

  public abstract R visitBooleanEquality(BooleanEquality booleanEquality);
  
}
